<HTML>
<HEAD>
<TITLE>Biblioteka funkcji operujcych na waciwoci UserAgent</TITLE>
<SCRIPT LANGUAGE="JavaScript">
// proste okrelenie rodzaju przegldarki
function isNav() {
    return (navigator.appName == "Netscape")
}

function isIE() {
    return (navigator.appName == "Microsoft Internet Explorer")
}

// okrelenie systemu operacyjnego
function isWindows() {
    return (navigator.appVersion.indexOf("Win") != -1)
}

function isWin95NT() {
    return (isWindows() && (navigator.appVersion.indexOf("Win16") == -1 && 
    navigator.appVersion.indexOf("Windows 3.1") == -1))
}

function isMac() {
    return (navigator.appVersion.indexOf("Mac") != -1)
}

function isMacPPC() {
    return (isMac() && (navigator.appVersion.indexOf("PPC") != -1 || 
    navigator.appVersion.indexOf("PowerPC") != -1))
}
function isUnix() {
    return (navigator.appVersion.indexOf("X11") != -1)
}

// okrelanie numeru wersji przegldarki
function isGeneration2() {
    return (parseInt(navigator.appVersion) == 2)
}

function isGeneration3() {
    return (parseInt(navigator.appVersion) == 3)
}

function isGeneration3Min() {
    return (parseInt(navigator.appVersion.charAt(0)) >= 3)
}
function isNav4_7() {
    return (isNav() && parseFloat(navigator.appVersion) == 4.7)
}

function isMSIE4Min() {
    return (isIE() && navigator.appVersion.indexOf("MSIE") != -1)
}

function isMSIE5_5() {
    return (navigator.appVersion.indexOf("MSIE 5.5") != -1)
}

function isNN6Min() {
    return (isNav() && parseInt(navigator.appVersion) >= 5)
}

// dostpne sposoby odwoywania si do obiektw 
function isDocAll() {
    return (document.all) ? true : false
}

function isDocW3C() {
    return (document.getElementById) ? true : false
}

// wywietlenie informacji w odpowiednich polach
function checkBrowser() {
    var form = document.forms[0]
    form.brandNN.value = isNav()
    form.brandIE.value = isIE()
    form.win.value = isWindows()
    form.win32.value = isWin95NT()
    form.mac.value = isMac()
    form.ppc.value = isMacPPC()
    form.unix.value = isUnix()
    form.ver3Only.value = isGeneration3()
    form.ver3Up.value = isGeneration3Min()
    form.Nav4_7.value = isNav4_7()
    form.Nav6Up.value = isNN6Min()
    form.MSIE4.value = isMSIE4Min()
    form.MSIE5_5.value = isMSIE5_5()
    form.doc_all.value = isDocAll()
    form.doc_w3c.value = isDocW3C()
}
</SCRIPT>
</HEAD>

<BODY onLoad="checkBrowser()">
<H1>Informacje o uywanej przegldarce</H1>
<FORM>
<H2>Rodzaj</H2>
Netscape Navigator:<INPUT TYPE="text" NAME="brandNN" SIZE=5>
Internet Explorer:<INPUT TYPE="text" NAME="brandIE" SIZE=5>
<HR>
<H2>Numer wersji przegldarki</H2>
Wycznie 3.0x (dowolny rodzaj):<INPUT TYPE="text" NAME="ver3Only" SIZE=5><P>
3 lub pniejsza (dowolny rodzaj): <INPUT TYPE="text" NAME="ver3Up" SIZE=5><P>
Navigator 4.7: <INPUT TYPE="text" NAME="Nav4_7" SIZE=5><P>
Navigator 6+: <INPUT TYPE="text" NAME="Nav6Up" SIZE=5><P>
MSIE 4+: <INPUT TYPE="text" NAME="MSIE4" SIZE=5><P>
MSIE 5.5:<INPUT TYPE="text" NAME="MSIE5_5" SIZE=5><P>
<HR>
<H2>System operacyjny</H2>
Windows: <INPUT TYPE="text" NAME="win" SIZE=5>
Windows 95/98/2000/NT: <INPUT TYPE="text" NAME="win32" SIZE=5><P>
Macintosh: <INPUT TYPE="text" NAME="mac" SIZE=5>
Mac PowerPC: <INPUT TYPE="text" NAME="ppc" SIZE=5><P>
Unix: <INPUT TYPE="text" NAME="unix" SIZE=5><P>
<HR>
<H2>Sposb tworzenia odwoa</H2>
Wyraenia <TT>document.all</TT>: <INPUT TYPE="text" NAME="doc_all" SIZE=5><P>
Metoda <TT>document.getElementById()</TT>: <INPUT TYPE="text" NAME="doc_w3c" SIZE=5><P>
</FORM>
</BODY>
</HTML>
